Transmission and distribution of video signals is increasingly performed using digitally encoded video signals. For example, digital terrestrial and satellite television broadcasting is gradually taking over from analogue broadcasting systems. Also, digital video signal is used for distribution via e.g. the internet or using magneto optical carriers such as Digital Versatile Discs etc.
In order to maintain manageable data rates and file sizes for digital video, complex video encoding and decoding algorithms are used that provide a very high degree of compression. Examples of popular standardized video codecs are the Motion Picture Expert Group's MPEG-2 and MPEG-4 Technical Standards.
However, a problem with most standardized video codecs is that they are very sensitive to bit errors e.g. occurring during the broadcasting, distribution and retrieval etc of the encoded video signal. This high sensitivity is in particular due to the video encoding algorithms reliance on prediction algorithms that predict video data based on characteristics of other video data. Also, the use of variable length codes for encoding video data results in a high sensitivity to bit errors. In order to reduce the propagation of errors, current standardised systems provide a number of error resiliency tools, such as limiting the range of prediction, introducing resynchronization markers and using reversible run length codes. Many standardized video codecs also provide layered coding schemes that allow multiple video encoding data sets (e.g. bitstreams) to be created that each have a different contribution to the final subjective quality of the decoded video. Different forward error correcting coding schemes can then be applied to the encoding data to allow the parts of the encoding data that have the largest contribution to quality to be more heavily protected than other parts.
Unfortunately, such error resilience schemes all introduce substantial amounts of additional error data thereby resulting in a substantial loss in coding efficiency for situations where the error characteristics are better than the scenario for which the coding is designed (e.g. when the video signal is transmitted over an error free channel). Consequently video signals are often encoded with little or completely without any error resiliency features.
However, if such an uncoded video signal needs to be transmitted over an error prone channel, then adding all but the simplest of the error resilience features requires decoding and re-encoding of the video signal which is a computationally intensive task.
The usual alternatives for adding error protection to a video signal are to protect the entire video signal using a forward error correcting code or to provide a checksum and retransmission service so that corrupted data can be detected and re-transmitted (e.g. as used in the well known Transmission Control Protocol, TCP).
However, the use of forward error correcting coding usually requires the error characteristics of the channel to be well known in advance of the transmission or requires that a worst case scenario is assumed thereby resulting in a higher error correcting data rate and reduced coding efficiency. Furthermore, as the error performance of error correcting codes tend to degrade steeply if the error rate increases beyond the level for which the code was designed, a substantial margin must typically be included. In particular, as error correcting codes tend to not degrade smoothly and gradually, it must be ensured that the system works with a data rate which ensures that the operating point never or very rarely reaches the situation where the coding performance is being degraded.
Furthermore, although the use of re-transmission techniques may be suitable for some systems, it is not practical for other systems. For example, re-transmission is unsuitable for some non-real time systems such as distribution of video signals by DVDs. Also, the use of retransmissions does not scale well if multiple users are receiving the same content as the retransmission resource requirement may quickly exceed the initial broadcasting resource.
Hence, when a video signal is e.g. to be broadcasted over networks with variable error characteristics (such as the Internet, digital television broadcasting or mobile wireless networks), current error resilience measures tend to be suboptimal.
Hence, an improved system for video processing would be advantageous and in particular a system allowing increased flexibility, improved backwards compatibility, facilitated implementation, smoother error performance degradation, improved quality, reduced data rate, improved coding efficiency and/or improved performance would be advantageous.